Skip to content

PWGHF: First version of the Bs creator, selector, task#312

Closed
pchrista wants to merge 8 commits into
AliceO2Group:masterfrom
pchrista:master
Closed

PWGHF: First version of the Bs creator, selector, task#312
pchrista wants to merge 8 commits into
AliceO2Group:masterfrom
pchrista:master

Conversation

@pchrista
Copy link
Copy Markdown
Contributor

No description provided.

@vkucera vkucera marked this pull request as draft November 22, 2021 16:28
@pchrista pchrista force-pushed the master branch 3 times, most recently from ccaaec5 to cd46ded Compare November 23, 2021 14:29
Copy link
Copy Markdown
Collaborator

@fcolamar fcolamar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Panos, as a preliminary comment, let me signal that by using the doMC option approach to select the tasks to be run, it won't be possible to switch off the MC task for the HFCandidateCreatorBs and the taskBs when running on Hyperloop. This because such global options cannot be set in Hyperloop, and the defaults value 'true' will be considered.
In case you plan to run on Hyperloop and to switch off the MC tasks at some point, I would suggest to modify those codes structure moving to a single task with two processes, activated/deactivated via a PROCESS_SWITCH (that can be set as a standard configurable), look e.g. at #230 or #231

@pchrista pchrista marked this pull request as ready for review November 23, 2021 15:57
Copy link
Copy Markdown
Collaborator

@fcolamar fcolamar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Panos, I added some comments related to the taskBs.cc, cheers!

Comment thread PWGHF/Tasks/taskBs.cxx Outdated
Comment thread PWGHF/Tasks/taskBs.cxx Outdated
Comment thread PWGHF/Tasks/taskBs.cxx Outdated

void init(o2::framework::InitContext&)
{
registry.add("hEtaGen", "MC particles (matched);#Lambda_{b}^{0} candidate #it{#eta}^{gen};entries", {HistType::kTH2F, {{100, -2., 2.}, {(std::vector<double>)bins, "#it{p}_{T} (GeV/#it{c})"}}});
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comments as for the other task about histogram names and definition of a vector for setting the histogram bins

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment thread PWGHF/Tasks/taskBs.cxx Outdated
Comment thread PWGHF/Tasks/taskBs.cxx Outdated
@vkucera vkucera marked this pull request as draft November 24, 2021 10:19
@vkucera
Copy link
Copy Markdown
Collaborator

vkucera commented Nov 24, 2021

Hi @pchrista , please fix the compilation warning.

Comment on lines +68 to +73
// check that the candidate pT is within the analysis range
if (candpT < pTCandMin || candpT >= pTCandMax) {
return false;
}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not needed

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am sorry, this should not have been removed. I thought it was checking the selector array pT range, but it actually checks a configurable range.

Comment thread PWGHF/TableProducer/HFCandidateCreatorBs.cxx Outdated
Comment on lines +273 to +274
// Match Ds+ -> φπ -> K+K-π
auto DsCandMC = particlesMC.iteratorAt(particle.daughter0Id());
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use particle.daughter0_as instead.

@pchrista
Copy link
Copy Markdown
Contributor Author

Hi @fcolamar @vkucera could you check and let me know what I missed?

@fcolamar
Copy link
Copy Markdown
Collaborator

Hi @pchrista, in the latest version of the taskBs I still see the pdg::Code::kLambdaB0 calls at L192 and L241, and two Lambda_c labels at L58 and L61.
For the rest instead the taskBs.cxx looks fine to me.

@pchrista
Copy link
Copy Markdown
Contributor Author

Thanks @fcolamar and apologies for the delay and the omission; I just pushed some changes

@fcolamar
Copy link
Copy Markdown
Collaborator

fcolamar commented Dec 1, 2021

Hi Panos, ok for the taskBs from my side, but of course let's see whether Vit has still comments on the other files

@pchrista
Copy link
Copy Markdown
Contributor Author

pchrista commented Dec 8, 2021

hi @vkucera , could you give it a look? It would be great if this code is merged so that Maurice can pick it up and develop/improve it further

// specific Bs candidate properties
namespace hf_cand_bs
{
DECLARE_SOA_INDEX_COLUMN_FULL(Index0, index0, int, HfCandProng3, "_0"); // Bs index
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
DECLARE_SOA_INDEX_COLUMN_FULL(Index0, index0, int, HfCandProng3, "_0"); // Bs index
DECLARE_SOA_INDEX_COLUMN_FULL(Index0, index0, int, HfCandProng3, "_0"); // Ds index

DECLARE_SOA_COLUMN(OriginMCRec, originMCRec, int8_t); // particle origin, reconstruction level
DECLARE_SOA_COLUMN(OriginMCGen, originMCGen, int8_t); // particle origin, generator level
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these needed?

enum DecayType { BsToDsPi }; // move this to a dedicated cascade namespace in the future?

// Bs → Ds+ π- → K+ K- π+ π-
// float massBs = RecoDecay::getMassPDG(pdg::Code::kBs);
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// float massBs = RecoDecay::getMassPDG(pdg::Code::kBs);

}
template <typename T>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
}
template <typename T>
}
template <typename T>

auto errorDecayLength = std::sqrt(getRotatedCovMatrixXX(covMatrixPV, phi, theta) + getRotatedCovMatrixXX(covMatrixPCA, phi, theta));
auto errorDecayLengthXY = std::sqrt(getRotatedCovMatrixXX(covMatrixPV, phi, 0.) + getRotatedCovMatrixXX(covMatrixPCA, phi, 0.));

int hfFlag = 1 << hf_cand_bs::DecayType::BsToDsPi;
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How is this flag useful?

origin = 0;
// Bs → Ds+ π-
if (RecoDecay::isMatchedMCGen(particlesMC, particle, pdg::Code::kBs, array{int(pdg::Code::kDs), -kPiPlus}, true)) {
// Match Ds+ -> φπ -> K+K-π
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How is this related to φπ?

adaptAnalysisTask<HFCandidateCreatorBsExpressions>(cfgc, TaskName{"hf-cand-creator-bs-expressions"})};
const bool doMC = cfgc.options().get<bool>("doMC");
if (doMC) {
workflow.push_back(adaptAnalysisTask<HFCandidateCreatorBsMC>(cfgc, TaskName{"hf-cand-creator-bs-mc"}));
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not use TaskName.

Comment on lines +253 to +254
// Bs → Ds+ π-
// Printf("Checking Bs → Ds+ π-");
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here you seem to be checking the Ds decay.

flag = 1 << hf_cand_bs::DecayType::BsToDsPi;
} else {
debug = 1;
LOGF(info, "WARNING: Λb in decays in the expected final state but the condition on the intermediate state is not fulfilled");
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this an info or a warning?
What do you want to report here?

Comment on lines +144 to +146
if (trackPion.sign() > 0) {
continue;
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the purpose of this cut?

@vkucera vkucera changed the title PWGHF: First version of the Bs creator PWGHF: First version of the Bs creator, selector, task Dec 11, 2021

#include "Framework/runDataProcessing.h"

/// Reconstruction of Λb candidates
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix Λb

Comment thread PWGHF/Tasks/taskBs.cxx

#include "Framework/runDataProcessing.h"

/// Λb0 analysis task
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix Λb

@github-actions
Copy link
Copy Markdown

This PR has not been updated in the last 30 days. Is it still needed? Unless further action is taken, it will be closed in 5 days.

@github-actions github-actions Bot added the stale label Jan 20, 2022
@github-actions github-actions Bot closed this Jan 26, 2022
alibuild added a commit to alibuild/O2Physics that referenced this pull request Jul 30, 2024
ChiaraDeMartin95 pushed a commit that referenced this pull request Jul 30, 2024
* PWGLF: physical primary checks for h-Str analysis

* Add physical primary condition also for closure

* Please consider the following formatting changes (#312)

* Please consider the following formatting changes (#313)

---------

Co-authored-by: ALICE Builder <alibuild@users.noreply.github.com>
MaximVirta pushed a commit to MaximVirta/O2Physics that referenced this pull request Aug 5, 2024
* PWGLF: physical primary checks for h-Str analysis

* Add physical primary condition also for closure

* Please consider the following formatting changes (AliceO2Group#312)

* Please consider the following formatting changes (AliceO2Group#313)

---------

Co-authored-by: ALICE Builder <alibuild@users.noreply.github.com>
Luca610 pushed a commit to Luca610/O2Physics that referenced this pull request Aug 13, 2024
* PWGLF: physical primary checks for h-Str analysis

* Add physical primary condition also for closure

* Please consider the following formatting changes (AliceO2Group#312)

* Please consider the following formatting changes (AliceO2Group#313)

---------

Co-authored-by: ALICE Builder <alibuild@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants